test :- a, fail.
test :- b, fail.
test :- c, fail.
test :-
	( a -> writeln('a is true') ; writeln('a is false') ),
	( b -> writeln('b is true') ; writeln('b is false') ),
	( c -> writeln('c is true') ; writeln('c is false') ).

%--------------------------------------------------------------

:- table a/0, b/0, c/0, d/0.

a :- b, tnot(c).

b :- a.
b.

c :- tnot(b).

